home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 46
/
Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso
/
-in_the_mag-
/
reader_requests
/
scilab
/
man
/
man-part1
/
cat3
/
syslin.3
< prev
next >
Wrap
Text File
|
1999-09-16
|
2KB
|
133 lines
syslin(1) Scilab Function syslin(1)
NAME
syslin - linear system definition
CALLING SEQUENCE
[sl]=syslin(dom,A,B,C [,D [,x0] ])
[sl]=syslin(A,B,C [,D [,x0] ])
[sl]=syslin(dom,N,D)
[sl]=syslin(dom,H)
PARAMETERS
dom : character string ('c', 'd'), or [] or a scalar. (If omitted,
dom=[])
A,B,C,D : matrices of the state-space representation (D optional with
default value zero matrix). For improper systems D is a polyno-
mial matrix.
x0 : vector (initial state; default value is 0)
N, D : polynomial matrices
H : rational matrix
sl : list ("syslin" list) representing the linear system
DESCRIPTION
syslin defines a linear system as a list and checks consistency of data.
dom specifies the time domain of the system and can have the following
values:
dom='c' for a continuous time system, dom='d' for a discrete time system, n
for a sampled system with sampling period n (in seconds).
dom=[] if the time domain is undefined (dom can be omitted in the calling
sequence)
State-space representation:
sl=syslin(dom,A,B,C [,D [,x0] ])
represents the system :
s x = A*x + B*u
y = C*x + D*u
x(0) = x0
The output of syslin is a list of the following form:
sl=list('lss',A,B,C,D,x0,dom)
Note that D is allowed to be a polynomial matrix (improper systems).
Transfer matrix representation:
sl=syslin(dom,N,D)
sl=syslin(dom,H)
The output of syslin is a list of the following form : sl=list('r',N,D,dom)
or sl=list('r',H(2),H(3),dom).
Linear systems defined as syslin can be manipulated as usual matrices (con-
catenation, extraction, transpose, multiplication, etc) both in state-space
or transfer representation.
Most of state-space control functions receive a syslin list as input
instead of the four matrices defining the system.
EXAMPLES
A=[0,1;0,0];B=[1;1];C=[1,1];
S1=syslin('c',A,B,C)
s=poly(0,'s');
D=s;
S2=syslin('c',A,B,C,D)
H1=(1+2*s)/s^2, S1bis=syslin('c',H1)
H2=(1+2*s+s^3)/s^2, S2bis=syslin('c',H2)
S1+S2
[S1,S2]
ss2tf(S1)-S1bis
S1bis+S2bis
S1*S2bis
size(S1)
SEE ALSO
ssrand, ss2tf, tf2ss, dscr